var overview = function() {
	var clock;
	return {
		/**页面加载初始化方法
		 * 
		 */
		init : function() {
			//页面时钟
			window.clearInterval(clock);
			clock = window.setInterval(function(){
				$("#now").text(util.getNowFormatDate());
			}, 1000);
			overview.getOverviewData();
			//查询电池详情并赋值
			var cycle = util.getRefreshCycle('REFRESH_CYCLE');
				//启用页面刷新
			overviewRefreshCount = 0;
			overviewRefreshTimer = window.setInterval(function(){
				App.blockUI($("#overview_content"),'努力加载中……');//停止loading
				overview.getOverviewData();
			}, cycle);
		},
		
		/**配置上电分布地图
		 * @param data 数据
		 */
		configMap : function(data, chart) {
			option = {
				title : {
					text : "上电分布",
					x:'center',
					y:'top',
					textStyle:{
						fontSize:12,
						color:'#FFFFFF'
					}
				},
				tooltip : {
					trigger : 'item'
				},
				dataRange : {
					x : '0',
					y : '10%',
					text : ['高', '低'], 
					calculable : true,
					textStyle:{color:'#1279E1'},
					color:['#1CA3B9','#BBE8F5']
				},
				series : [{
							name : '电池上电',
							type : 'map',
							mapType : 'china',
							roam : false,
							itemStyle : {
								normal : {
									label : {
										show : true,
										formatter : function(params){
											if(!isNaN(params.value)){
												return params.name+":"+params.value;
											}else {
												return ' ';
											}
										}
									},
									borderWidth:1,
									borderColor:'#fff',//省份的边框颜色
									color:'#009AB3'
								},
								emphasis : {
									borderWidth : 1,
									borderColor : '#63C1FF',
									color : '#30D9DE',
									label : {
										show : true,
										textStyle : {
											color : '#63C1FF'
										}
									}
								}
							},
							data : data
						}]
			};
			/*chart_two = echarts.init(document
					.getElementById("powerOnDistributeChart"),'macarons');*/
			chart.setOption(option);

		},
		/**柱状图配置
		 * @param title柱形图标题
		 * @param div_id 柱形图div_id
		 * @param data 数据
		 */
		configBarChart : function(title, div_id, data, chart) {
			var dataX = new Array();
			var dataY = new Array();
			for (var index = 0; index < data.length; index++) {
				dataX.push(data[index]['x']);
				dataY.push(data[index]['y']);
			}
			option = {
				title : {
					text : title,
					x:'center',
					y:'top',
					textStyle:{
						fontSize:12,
						color:'#FFFFFF'
					}
				},
				tooltip : {
					trigger : 'axis'
				},
				toolbox : {
					show : false
				},
				grid:{
					x:'15%'
				},
				xAxis : {
					type : 'category',
					splitLine : {
						show : false
					},
					data : dataX
				},
				yAxis : {
					type : 'value',
					splitLine : {
						show : false
					},
					axisLabel : {
						formatter : '{value}'
					}
				},
				series : [{
							name : '报警数',
							type : 'bar',
							data : dataY,
							barWidth : '40%',
							itemStyle : {
								normal : {
									label : {
										show : true,
										position : 'top'
									}
								}
							}
						}]
			};
			chart.setOption(option, true);
		},
		
		/**各系统型号告警比例 chart配置
		 * @param data 数据
		 */
		configPackModelChart : function(data, chart) {
			option = {
				title : {
					text : '各系统型号告警比例',
					x:'center',
					y:'top',
					textStyle:{
						fontSize:12,
						color:'#FFFFFF'
					}
				},
				tooltip : {
					trigger : 'item',
					formatter : "{a} <br/>{b} : {c} ({d}%)"
				},
				calculable : true,
				series : [
				{
							name : '型号告警占比',
							type : 'pie',
							radius : ['10%', '50%'],
                            center : ['50%', '50%'],
							roseType : 'area',
							sort : 'ascending', // for funnel
							data : data,
							itemStyle : {
								normal : {
									label : {
										show : true,
										formatter : '{b} : {c} ({d}%)'
									},
									labelLine : {
										show : true
									}
								}
							}
						}]
			};
			chart.setOption(option, true);
		},
		
		/**配置应用方向告警比例 chart
		 * @param dataInside 内环数据
		 * @param dataOutside 外环数据
		 */
		configApplicationAlertChart : function(dataInside, dataOutside, chart) {
			option = {
				title : {
					text : '应用方向告警比例',
					x:'center',
					y:'top',
					textStyle:{
						fontSize:12,
						color:'#FFFFFF'
					}
				},
				tooltip : {
					trigger : 'item',
					formatter : "{a} <br/>{b} : {c} ({d}%)"
				},
				calculable : false,
				series : [{
							name : '应用方向',
							type : 'pie',
							selectedMode : 'single',
							radius : [0, '35%'],
							itemStyle : {
								normal : {
									label : {
										position : 'inner'
									},
									labelLine : {
										show : false
									}
								}
							},
							data : dataInside
						}, {
							name : '应用方向',
							type : 'pie',
							radius : ['45%', '60%'],
							itemStyle : {
								normal : {
									label : {
										show : true,
										formatter : '{b} : {c} ({d}%)'
									},
									labelLine : {
										show : true
									}
								}
							},
							data :dataOutside
						}]
			}
		    chart.setOption(option, true);
		},
		getOverviewData:function(){
				$.ajax({
						"type" : "post",
						"url" : "monitor/workbench/getOverviewData.mvc",
						"dataType" : "json",
						"async" : true,
						"success" : function(data) {
							$("#todayAlertNum").text(data.todayAlertNum);
							$("#powerOnNum").text(data.powerOnNum);
							var chart_one = echarts.init(document.getElementById("alertClassifyBarChart"),'macarons');
							var chart_two = echarts.init(document.getElementById("powerOnDistributeChart"),'macarons');
							var chart_three = echarts.init(document.getElementById("materialTypeChart"),'macarons');
							var chart_four = echarts.init(document.getElementById("packModelChart"), 'macarons');
							var chart_five = echarts.init(document.getElementById("applicationChart"), 'macarons');
							overview.configBarChart("告警分类", "alertClassifyBarChart", data.alertClassifyBarChartData, chart_one);
							overview.configMap(data.powerOnDistributeData, chart_two);
							overview.configBarChart("各正极材料种类电池告警比例","materialTypeChart", data.materialTypeData, chart_three);
							overview.configPackModelChart(data.packModelData, chart_four);
							overview.configApplicationAlertChart(data.appticationData, data.appticationDetailData, chart_five);
							App.unblockUI($("#overview_content"));//停止loading
						},
						error : function(e) {
							//出错
							rmsBox.notify('error', {msg: '出错了！', delay:3000});
							App.unblockUI($("#overview_content"));//停止loading
						}
					});
		}
	}
}()